/*
 * Copyright 2018 JDCLOUD.COM
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *    http:#www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 *
 * 
 * 
 *
 * 
 * Contact: 
 *
 * NOTE: This class is auto generated by the jdcloud code generator program.
 */


using System;
using System.Collections.Generic;
using System.Text;

using Newtonsoft.Json;
using JDCloudSDK.Charge.Model;

namespace JDCloudSDK.Clickhouse.Model
{

    /// <summary>
    ///  instance
    /// </summary>
    public class Instance
    {

        ///<summary>
        /// 实例ID
        ///</summary>
        public string InstanceId{ get; set; }
        ///<summary>
        /// resrouceId
        ///</summary>
        public string ResourceId{ get; set; }
        ///<summary>
        /// 实例名称
        ///</summary>
        public string InstanceName{ get; set; }
        ///<summary>
        /// 实例引擎版本
        ///</summary>
        public string EngineVersion{ get; set; }
        ///<summary>
        /// 实例副本数
        ///</summary>
        public int? ReplicaNum{ get; set; }
        ///<summary>
        /// 实例分片数
        ///</summary>
        public int? ShardNum{ get; set; }
        ///<summary>
        /// 规格
        ///</summary>
        public string ChNodeClass{ get; set; }
        ///<summary>
        /// 存储类型
        ///</summary>
        public string ChNodeStorageType{ get; set; }
        ///<summary>
        /// 节点存储空间
        ///</summary>
        public int? ChNodeStorageGB{ get; set; }
        ///<summary>
        /// CPU核数
        ///</summary>
        public int? ChNodeCPU{ get; set; }
        ///<summary>
        /// 内存单位GB
        ///</summary>
        public int? ChNodeMemoryGB{ get; set; }
        ///<summary>
        /// zk节点规格
        ///</summary>
        public string ZkNodeClass{ get; set; }
        ///<summary>
        /// zk节点数目
        ///</summary>
        public int? ZkNodeNum{ get; set; }
        ///<summary>
        /// CPU核数
        ///</summary>
        public int? ZkNodeCPU{ get; set; }
        ///<summary>
        /// 内存单位GB
        ///</summary>
        public int? ZkNodeMemoryGB{ get; set; }
        ///<summary>
        /// zk节点存储空间
        ///</summary>
        public int? ZkNodeStorageGB{ get; set; }
        ///<summary>
        /// monitor节点规格
        ///</summary>
        public string MonitorNodeClass{ get; set; }
        ///<summary>
        /// monitor节点数目
        ///</summary>
        public int? MonitorNodeNum{ get; set; }
        ///<summary>
        /// CPU核数
        ///</summary>
        public int? MonitorNodeCPU{ get; set; }
        ///<summary>
        /// 内存单位GB
        ///</summary>
        public int? MonitorNodeMemoryGB{ get; set; }
        ///<summary>
        /// monitor节点存储空间
        ///</summary>
        public int? MonitorNodeStorageGB{ get; set; }
        ///<summary>
        /// 总CPU核数
        ///</summary>
        public int? TotalCPU{ get; set; }
        ///<summary>
        /// 总内存单位GB
        ///</summary>
        public int? TotalMemoryGB{ get; set; }
        ///<summary>
        /// 总节点存储空间
        ///</summary>
        public int? TotalStorageGB{ get; set; }
        ///<summary>
        /// 地域ID
        ///</summary>
        [JsonProperty("regionId")]
        public string RegionIdValue{ get; set; }
        ///<summary>
        /// 可用区ID，目前仅支持单可用区
        ///</summary>
        public List<string> AzId{ get; set; }
        ///<summary>
        /// VPC的ID
        ///</summary>
        public string VpcId{ get; set; }
        ///<summary>
        /// 子网的ID
        ///</summary>
        public string SubnetId{ get; set; }
        ///<summary>
        /// 实例状态，参见[枚举参数定义](../Enum-Definitions/Enum-Definitions.md)
        ///</summary>
        public string InstanceStatus{ get; set; }
        ///<summary>
        /// 实例创建时间, UTC 时间格式
        ///</summary>
        public string CreateTime{ get; set; }
        ///<summary>
        /// 计费配置
        ///</summary>
        public JDCloudSDK.Charge.Model.Charge Charge{ get; set; }
        ///<summary>
        /// 标签信息
        ///</summary>
        public List<Tag> Tags{ get; set; }
    }
}
